In a variety of different contexts, it is desirable to test electronic equipment and collect data from the tests for evaluation and analysis. Such testing can involve a plurality of inputs that are often seen in the field. Accordingly, testing seeks to monitor those inputs and the results produced thereby. Thus, a system that can receive inputs that accurately mimic those seen in the field, monitor those inputs, and monitor outputs is needed. Additionally, the plurality of inputs are assembled into a single data stream in which priority is given to certain pieces of data over others.
The present disclosure provides a computer implemented system for interlacing and prioritizing electronic messages from a plurality of sources, including: a first processing sequence that receives a first message from a first source and applies a first priority to the first message; a second processing sequence that stores the first message; a third processing sequence that receives a second message from a second source and applies a second priority to the second message, the second priority being lesser than the first priority; a fourth processing sequence that stores the second message; a fifth processing sequence that receives a third message from a third source and applies a third priority to the third message, the third priority being lesser than the second priority; a sixth processing sequence that stores the third message; and a seventh processing sequence that generates an output data stream of messages. The generation of the output data stream includes: a first sub-sequence that detects if any un-outputted messages exist having the first priority; if the first sub-sequence detects un-outputted messages having the first priority, then invoking a second sub-sequence that places the earliest received un-outputted message having the first priority into the output data stream and then invoking a third sub-sequence that waits a pre-defined interval and re-invokes the first sub-sequence, and if the first sub-sequence detects no un-outputted messages having the first priority then invoking a fourth sub-sequence that detects if any un-outputted messages exist having the second priority; if the fourth sub-sequence is invoked and detects un-outputted messages having the second priority, then invoking a fifth sub-sequence that places the earliest received un-outputted message having the second priority into the output data stream and then invoking the third sub-sequence that waits a pre-defined interval and re-invokes the first sub-sequence, if the fourth sub-sequence is invoked and detects no un-outputted messages having the second priority then invoking a sixth sub-sequence that detects if any un-outputted messages exist having the third priority; if the sixth sub-sequence is invoked and detects un-outputted messages having the third priority, then invoking a seventh sub-sequence that places the earliest received un-outputted message having the third priority into the output data stream and then invoking the third sub-sequence that waits a pre-defined interval and re-invokes the first sub-sequence; if the sixth sub-sequence is invoked and detects no un-outputted messages having the third priority then loop back to the first sub-sequence to wait for a received message.
A second embodiment of the present disclosure provides a computer implemented method for interlacing and prioritizing electronic messages from a plurality of sources, including: receiving a first message from a first source; applying a first priority to the first message; storing the first message; receiving a second message from a second source; applying a second priority to the second message, the second priority being lesser than the first priority; storing the second message; receiving a third message from a third source; applying a third priority to the third message, the third priority being lesser than the second priority; storing the third message; and generating an output data stream of messages. The generating of the output data stream including: a first step of detecting if any un-outputted messages exist having the first priority; if un-outputted messages having the first priority are detected, then placing the earliest received un-outputted message having the first priority into the output data stream and then waiting a pre-defined interval and returning to the first step, and if no un-outputted messages having the first priority are detected, then detecting if any un-outputted messages exist having the second priority; if un-outputted messages having the second priority are detected, then placing the earliest received un-outputted message having the second priority into the output data stream and then waiting a pre-defined interval and then returning to the first step, if no un-outputted messages having the second priority are detected then detecting if any un-outputted messages exist having the third priority; if un-outputted messages having the third priority are detected, then placing the earliest received un-outputted message having the third priority into the output data stream and then returning to the first step; if no un-outputted messages having the third priority are detected then returning to the first step.
Yet another embodiment of the present disclosure provides a computer readable medium storing code for interlacing and prioritizing electronic messages from a plurality of sources, the code including instructions to: receive a first message from a first source; apply a first priority to the first message; store the first message; receive a second message from a second source; apply a second priority to the second message, the second priority being lesser than the first priority; store the second message; receive a third message from a third source; apply a third priority to the third message, the third priority being lesser than the second priority; store the third message; and generate an output data stream of messages, the generating of the output data stream including: a first step of detecting if any un-outputted messages exist having the first priority; if un-outputted messages having the first priority are detected, then placing the earliest received un-outputted message having the first priority into the output data stream and then waiting a pre-defined interval and returning to the first step, and if no un-outputted messages having the first priority are detected, then detecting if any un-outputted messages exist having the second priority; if un-outputted messages having the second priority are detected, then placing the earliest received un-outputted message having the second priority into the output data stream and then waiting a pre-defined interval and then returning to the first step, if no un-outputted messages having the second priority are detected then detecting if any un-outputted messages exist having the third priority; if un-outputted messages having the third priority are detected, then placing the earliest received un-outputted message having the third priority into the output data stream and then returning to the first step; if no un-outputted messages having the third priority are detected then returning to the first step.
These and other features of the present disclosure will become more apparent and the subject matter of the disclosure will be better understood by reference to the following description of embodiments of the disclosure taken in conjunction with the accompanying drawings.
Although the drawings represent embodiments of various features and components according to the present disclosure, the drawings are not necessarily to scale and certain features may be exaggerated in order to better illustrate and explain the present disclosure. The exemplifications set out herein illustrate embodiments of the disclosure, and such exemplifications are not to be construed as limiting the scope of the disclosure in any manner.